home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Games Machine 124
/
XENIATGM124.iso
/
html
/
TGM Bazaar
/
database
/
navigazione.js
< prev
next >
Wrap
Text File
|
2001-09-06
|
4KB
|
168 lines
//BEgin
loop=false;
page=null;
pageBase=null;
t=0;
function browser(){
//linka il layer
if (NN4)
page = eval(parent.frames[2].document.layers["contenuto"]);
if (IE4){
page = eval(parent.frames[2].document.all("contenuto").style);
pageBase = eval(parent.frames[2].document.all("contenuto"));
//window.alert(parent.frames[2].document.all("contenuto").style.top)
}
}//browser
//lancia lo scrolling verticale con un ritardo di un secondo
function verScroll(dir, spd, loopIn) {
direction=dir;
speed=spd;
loopInput=loopIn;
//inizializzo la funzione di time out
scrolltimer = null;
scrolltimer = setTimeout("scrollVerticale(direction, speed, loopInput)", 50);
}//verScroll
//controlla lo scrolling verticale
function scrollVerticale(dir, spd, loopIn) {
//function verScroll(dir, spd, loopIn) {
//inizializzo la funzione di time out
scrolltimer = null;
browser();
loop=loopIn;
direction = dir;
speed = parseInt(spd);
if (loop) {
switch (direction){
case "dn": parent.frames[2].scrollBy(0, speed); break;
case "up": parent.frames[2].scrollBy(0, -speed); break;
}//switch
}//while
scrolltimer = setTimeout("scrollVerticale(direction, speed, true)", 1);
}//scrollVerticale
//blocca lo scrolling
function stopScroll() {
loop = false;
clearTimeout(scrolltimer);
}
//la base del salto incondizionato
function jump(where){
browser();
if (NN4) page.moveToAbsolute(16, where);
if (IE4) page.top=where;
}//end jump
//la funzione richiamata dai pulsanti per far saltare a un determinato punto
function go(nome){
browser();
if (NN4) ancore=page.document.anchors;
if (IE4) ancore=parent.frames[2].document.anchors;
//ancore=parent.frames[2].document.all("contenuto").document.anchors;
//window.alert("lunghezza: "+ancore.length);
//window.alert("GO: "+parent.frames[2].document.anchors[0]);
if (ancore.length>0){
if (NN4){
delta=ancore[0].y;
deltaPrima=ancore[ancore.length-1].y;
}//if
if (IE4){
delta=ancore[0].parentElement.offsetTop;
deltaPrima=ancore[ancore.length-1].parentElement.offsetTop;
}//if
trovata=false;
i=0;
posPagina=parseInt(pageBase.parentElement.scrollTop);
//window.alert("offset dell'elemento: "+ancore[2].parentElement.offsetTop+"\nposPagina: "+posPagina);
//Percorrendo le ancore del documento due a due, memorizzo la posizione della prima
//ancora in vista
while ((!trovata)&&(i<ancore.length)){
if (NN4){
if (ancore[i].y<posPagina)
deltaPrima=ancore[i].y;
if (ancore[i].y>posPagina){
delta=ancore[i].y;
trovata=true;
}//if
}//if
if (IE4){
if (ancore[i].parentElement.offsetTop<posPagina)
deltaPrima=ancore[i].parentElement.offsetTop;
if (ancore[i].parentElement.offsetTop>posPagina){
delta=ancore[i].parentElement.offsetTop;
trovata=true;
}//if
if (posPagina==pageBase.scrollHeight-parent.frames[2].document.documentElement.scrollHeight+parseInt(page.top)){
delta=ancore[0].parentElement.offsetTop;
}//if
}//if
i=i+1;
}//while
// window.alert("DELTA: "+delta);
if (nome == "zero")
//ancore[deltaPrima].scrollIntoView(true)
//jump(-deltaPrima);
parent.frames[2].scrollTo(0, deltaPrima);
if (nome == "five")
//ancore[delta].scrollIntoView(true)
//jump(-delta);
eeee=parent.frames[2].scrollTo(0, delta);
// if (IE4){
// window.alert("\nI: "+(i-1)+
// "\nAncore[i].parentElement.offsetTop: "+ancore[i-1].parentElement.offsetTop+
// "\nAncore[i].y: "+ancore[i-1].y+
// "\nAncore[i].clientTop: "+ancore[i-1].clientTop+
// "\nAncore[i].top: "+ancore[i-1].top+
// "\nAncore[i].parentTop: "+ancore[i-1].parentTop+
// "\nposPagina: "+posPagina+
// "\nConfronto: "+ (ancore[i-1].parentElement.offsetTop>posPagina)+
// "\nDelta: "+delta+
// "\nHeight: "+pageBase.parentElement.scrollHeight+
// "\neee: "+eeee+
// "\npageBase.scrollHeight: "+pageBase.scrollHeight+
// "\nparentframes2.document.documentElement.scrollHeight: "+parent.frames[2].document.documentElement.scrollHeight+
// "\npagetop: "+page.top+
// "\nSommatoria: "+parseInt(pageBase.scrollHeight-parent.frames[2].document.documentElement.scrollHeight+parseInt(page.top))+
// "\nTrovata: "+trovata+
// "\nDeltaPrima: "+deltaPrima);
// }
}//if
}//go
// End -->